package com.groupbuying.store.service;

import com.groupbuying.store.utils.Query;
import com.groupbuying.store.domain.StoreCheckoutCounterRelDO;
import com.groupbuying.store.dto.forManage.StoreCheckoutCounterRelDTO;

import java.util.List;
import java.util.Map;

/**
 * 收款台和门店员工关联表
 * 
 * @author wenguoqiang
 * @email 17081@mengtaigroup.com
 * @date 2019-01-25 17:07:11
 */
public interface StoreCheckoutCounterRelService {
	
	StoreCheckoutCounterRelDO get(String uuid);
	
	List<StoreCheckoutCounterRelDO> list(Map<String, Object> map);
	
	int count(Map<String, Object> map);
	
	int save(StoreCheckoutCounterRelDO storeCheckoutCounterRel);
	
	int update(StoreCheckoutCounterRelDO storeCheckoutCounterRel);
	
	int remove(String uuid);
	
	int batchRemove(String[] uuids);

	/**
	 * 通过账户uuid 和 柜台uuid 获取柜台关联信息
	 * @param counterUuid
	 * @param accountId
	 * @param delflag
	 * @return
	 */
	StoreCheckoutCounterRelDO getByAccountUuidAndCounterUuid(String counterUuid, String accountId,String delflag);

	/**
	 * 通过账户uuid
	 * @param accountId
	 * @return
	 */
	StoreCheckoutCounterRelDO getByAccountUuid(String accountId);

	/**
	 * 通过柜台uuid获取列表数据
	 * @param pageShow
	 * @param nowPage
	 * @param counterUuid
	 * @return
	 */
	List<StoreCheckoutCounterRelDO> getListByCounterUuid(String pageShow, String nowPage, String counterUuid);

	/**
	 * 根据用户账户id查找收银台的列表信息
	 * @param query
	 * @return
	 */
	List<StoreCheckoutCounterRelDTO> getListByAccountId(Query query);
	/**
	 * 根据用户账户id查找收银台的列表数量
	 * @param query
	 * @return
	 */
	int getListCountByAccountId(Query query);
}
